package com.skilltrackedu.config;


import com.skilltrackedu.interceptors.UserInfoInterceptor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.DispatcherServlet;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * SpringMvc配置类
 *
* @author LENOVO
* @version 1.0
* @date 2025/4/21 17:43
*/
@Configuration
@ConditionalOnClass(DispatcherServlet.class)
public class MvcConfig implements WebMvcConfigurer {

    /**
     * 添加拦截器配置
     *
     * 该方法用于向Spring MVC的拦截器注册表中添加自定义拦截器
     * 拦截器用于在请求处理之前或之后执行特定逻辑，如日志记录、权限检查等
     *
     * @param registry 拦截器注册表，用于添加或配置拦截器
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 添加一个自定义的用户信息拦截器，用于处理所有请求
        registry.addInterceptor(new UserInfoInterceptor());
    }
}